package java6.src.chapter04.Demo3;

/**
 *  抽象类
 *  1.抽象类可以直接继承抽象类(抽象类无法实例化为对象)
 */
abstract class Flower{
    String color;// 颜色
    int petal_number;
    String florescence;//花期
    abstract void setColor(String color);// 抽象
    abstract void setPetal_number(int num);
    void setFlorescence(String florescence){
        this.florescence = florescence;// 不是抽象方法 可以写具体实现
    }
}
abstract class Poney extends Flower{}//在这里牡丹是抽象类 无法实例化
class PlumBlossm extends Flower{// 梅花 继承抽象的花朵类
    void setColor(String color){
        if (color.equals("")){
            this.color = "粉白色";
        }else {
            this.color = color;
        }
    }

    @Override
    void setPetal_number(int num) {

    }

    void setPetalNumber(int num){
        this.petal_number = num;
    }
}
public class Demo3 {
    public static void main(String[] args) {
 //       Poney p = new Poney(); 错误 抽象类
        PlumBlossm plumBlossm = new PlumBlossm();
        plumBlossm.setPetalNumber(5);// 梅花有5个花瓣
    }
}